(export (version "E")
  (design
    (title "Signal Goblin v8 Dual Brain")
    (company "Signal Goblin Project")
    (comment1 "ESP32-C5 Display Brain + STM32WB55 Radio Brain")
    (comment2 "WiFi 2.4GHz + 5GHz / NFC / CC1101 / nRF24 / IR / BLE")
  )
  (components
    (comp (ref "U1")
      (value "ESP32-C5-WROOM-1")
      (footprint "ESP32-C5-WROOM-1")
      (description "Display Brain — TFT + WiFi 2.4/5GHz")
    )
    (comp (ref "U2")
      (value "STM32WB55CGU6")
      (footprint "QFN-48_7x7mm_P0.5mm")
      (description "Radio Brain — CC1101+nRF24+NFC+IR+BLE")
    )
    (comp (ref "DSP1")
      (value "ILI9488-FPC-14pin")
      (footprint "FPC-14P-0.5mm")
      (description "Raw ILI9488 3.5 inch TFT panel FPC")
    )
    (comp (ref "U5")
      (value "XPT2046")
      (footprint "TSSOP-16")
      (description "Resistive touch controller")
    )
    (comp (ref "LED1")
      (value "WS2812B-2020")
      (footprint "LED-2020-SMD")
      (description "RGB status LED")
    )
    (comp (ref "R5")
      (value "330R")
      (footprint "R_0402")
      (description "RGB data resistor")
    )
    (comp (ref "U3")
      (value "CC1101")
      (footprint "CC1101-Module-SMA")
      (description "Sub-GHz radio with SMA")
    )
    (comp (ref "U4")
      (value "nRF24L01+")
      (footprint "NRF24-Module-SMA")
      (description "2.4GHz radio with SMA")
    )
    (comp (ref "U6")
      (value "PN532")
      (footprint "PN532-Module-I2C")
      (description "NFC module Elechouse V3")
    )
    (comp (ref "IR1")
      (value "IR-TX-RX")
      (footprint "IR-Module-4pin")
      (description "IR transmit receive")
    )
    (comp (ref "J1")
      (value "SMA-CC1101")
      (footprint "SMA-EDGE")
      (description "CC1101 antenna left ear")
    )
    (comp (ref "J2")
      (value "SMA-nRF24")
      (footprint "SMA-EDGE")
      (description "nRF24 antenna right ear")
    )
    (comp (ref "MOD1")
      (value "TP4056-Boost-USBC")
      (footprint "TP4056-MODULE")
      (description "Charging + boost 3.3V")
    )
    (comp (ref "BT1")
      (value "LiPo-JST-PH2")
      (footprint "JST-PH-2P-2mm")
      (description "LiPo battery connector")
    )
    (comp (ref "SW1")
      (value "PWR-SWITCH-SPDT")
      (footprint "SW-SPDT-THT")
      (description "Power switch")
    )
    (comp (ref "R1")
      (value "4.7k")
      (footprint "R_0402")
      (description "I2C SDA pull-up")
    )
    (comp (ref "R2")
      (value "4.7k")
      (footprint "R_0402")
      (description "I2C SCL pull-up")
    )
    (comp (ref "R3")
      (value "47k")
      (footprint "R_0402")
      (description "Batt divider upper")
    )
    (comp (ref "R4")
      (value "47k")
      (footprint "R_0402")
      (description "Batt divider lower")
    )
    (comp (ref "C1")
      (value "100nF")
      (footprint "C_0402")
      (description "ESP32-C5 VCC decoupling")
    )
    (comp (ref "C2")
      (value "10uF")
      (footprint "C_0402")
      (description "ESP32-C5 VCC bulk")
    )
    (comp (ref "C3")
      (value "100nF")
      (footprint "C_0402")
      (description "STM32 VCC decoupling")
    )
    (comp (ref "C4")
      (value "10uF")
      (footprint "C_0402")
      (description "STM32 VCC bulk")
    )
    (comp (ref "C5")
      (value "100uF")
      (footprint "C_Radial_D5mm")
      (description "nRF24 VCC 100uF")
    )
    (comp (ref "SW2")
      (value "BOOT-C5")
      (footprint "SW-Tactile-6mm")
      (description "ESP32-C5 BOOT button")
    )
    (comp (ref "SW3")
      (value "RST-C5")
      (footprint "SW-Tactile-6mm")
      (description "ESP32-C5 RESET button")
    )
    (comp (ref "SW4")
      (value "RST-STM")
      (footprint "SW-Tactile-6mm")
      (description "STM32 RESET button")
    )
    (comp (ref "H1")
      (value "MountHole")
      (footprint "MountingHole_2.5mm")
      (description "M2.5 mounting hole")
    )
    (comp (ref "H2")
      (value "MountHole")
      (footprint "MountingHole_2.5mm")
      (description "M2.5 mounting hole")
    )
    (comp (ref "H3")
      (value "MountHole")
      (footprint "MountingHole_2.5mm")
      (description "M2.5 mounting hole")
    )
    (comp (ref "H4")
      (value "MountHole")
      (footprint "MountingHole_2.5mm")
      (description "M2.5 mounting hole")
    )
  )
  (nets
    (net (name "VCC_3V3")
      (node (ref "MOD1") (pin "OUT+"))
      (node (ref "U1") (pin "3V3"))
      (node (ref "U2") (pin "VDD"))
      (node (ref "U3") (pin "VCC"))
      (node (ref "U4") (pin "VCC"))
      (node (ref "U5") (pin "VCC"))
      (node (ref "U6") (pin "VCC"))
      (node (ref "DSP1") (pin "VCC"))
      (node (ref "IR1") (pin "VCC"))
      (node (ref "LED1") (pin "VDD"))
      (node (ref "R1") (pin "1"))
      (node (ref "R2") (pin "1"))
      (node (ref "R3") (pin "1"))
      (node (ref "C1") (pin "1"))
      (node (ref "C2") (pin "1"))
      (node (ref "C3") (pin "1"))
      (node (ref "C4") (pin "1"))
      (node (ref "C5") (pin "1"))
    )
    (net (name "GND")
      (node (ref "U1") (pin "GND"))
      (node (ref "U2") (pin "VSS"))
      (node (ref "U2") (pin "VSSA"))
      (node (ref "U3") (pin "GND"))
      (node (ref "U4") (pin "GND"))
      (node (ref "U5") (pin "GND"))
      (node (ref "U6") (pin "GND"))
      (node (ref "DSP1") (pin "GND"))
      (node (ref "IR1") (pin "GND"))
      (node (ref "LED1") (pin "VSS"))
      (node (ref "MOD1") (pin "OUT-"))
      (node (ref "MOD1") (pin "B-"))
      (node (ref "BT1") (pin "B-"))
      (node (ref "SW1") (pin "GND"))
      (node (ref "SW2") (pin "2"))
      (node (ref "SW3") (pin "2"))
      (node (ref "SW4") (pin "2"))
      (node (ref "R4") (pin "2"))
      (node (ref "C1") (pin "2"))
      (node (ref "C2") (pin "2"))
      (node (ref "C3") (pin "2"))
      (node (ref "C4") (pin "2"))
      (node (ref "C5") (pin "2"))
      (node (ref "J1") (pin "GND1"))
      (node (ref "J1") (pin "GND2"))
      (node (ref "J2") (pin "GND1"))
      (node (ref "J2") (pin "GND2"))
    )
    (net (name "C5_SPI_SCK")
      (node (ref "U1") (pin "IO0"))
      (node (ref "DSP1") (pin "SCK"))
      (node (ref "DSP1") (pin "T_CLK"))
      (node (ref "U5") (pin "CLK"))
    )
    (net (name "C5_SPI_MOSI")
      (node (ref "U1") (pin "IO1"))
      (node (ref "DSP1") (pin "MOSI"))
      (node (ref "DSP1") (pin "T_MOSI"))
      (node (ref "U5") (pin "DIN"))
    )
    (net (name "C5_SPI_MISO")
      (node (ref "U1") (pin "IO2"))
      (node (ref "DSP1") (pin "MISO"))
      (node (ref "DSP1") (pin "T_MISO"))
      (node (ref "U5") (pin "DOUT"))
    )
    (net (name "C5_TFT_CS")
      (node (ref "U1") (pin "IO4"))
      (node (ref "DSP1") (pin "CS"))
    )
    (net (name "C5_TFT_DC")
      (node (ref "U1") (pin "IO5"))
      (node (ref "DSP1") (pin "DC"))
    )
    (net (name "C5_TFT_RST")
      (node (ref "U1") (pin "IO6"))
      (node (ref "DSP1") (pin "RESET"))
    )
    (net (name "C5_TFT_BL")
      (node (ref "U1") (pin "IO7"))
      (node (ref "DSP1") (pin "LED"))
    )
    (net (name "C5_TOUCH_CS")
      (node (ref "U1") (pin "IO3"))
      (node (ref "U5") (pin "CS"))
      (node (ref "DSP1") (pin "T_CS"))
    )
    (net (name "C5_TOUCH_IRQ")
      (node (ref "U1") (pin "IO8"))
      (node (ref "U5") (pin "IRQ"))
      (node (ref "DSP1") (pin "T_IRQ"))
    )
    (net (name "C5_RGB")
      (node (ref "U1") (pin "IO9"))
      (node (ref "R5") (pin "1"))
    )
    (net (name "RGB_DIN")
      (node (ref "R5") (pin "2"))
      (node (ref "LED1") (pin "DIN"))
    )
    (net (name "C5_BATT_ADC")
      (node (ref "U1") (pin "IO10"))
      (node (ref "R3") (pin "2"))
      (node (ref "R4") (pin "1"))
    )
    (net (name "C5_BOOT")
      (node (ref "U1") (pin "IO0"))
      (node (ref "SW2") (pin "1"))
    )
    (net (name "C5_RST")
      (node (ref "U1") (pin "EN"))
      (node (ref "SW3") (pin "1"))
    )
    (net (name "UART_TX")
      (node (ref "U1") (pin "IO17"))
      (node (ref "U2") (pin "PA10"))
    )
    (net (name "UART_RX")
      (node (ref "U1") (pin "IO18"))
      (node (ref "U2") (pin "PA9"))
    )
    (net (name "STM_SPI_SCK")
      (node (ref "U2") (pin "PA5"))
      (node (ref "U3") (pin "SCK"))
      (node (ref "U4") (pin "SCK"))
    )
    (net (name "STM_SPI_MISO")
      (node (ref "U2") (pin "PA6"))
      (node (ref "U3") (pin "MISO"))
      (node (ref "U4") (pin "MISO"))
    )
    (net (name "STM_SPI_MOSI")
      (node (ref "U2") (pin "PA7"))
      (node (ref "U3") (pin "MOSI"))
      (node (ref "U4") (pin "MOSI"))
    )
    (net (name "CC_CS")
      (node (ref "U2") (pin "PA4"))
      (node (ref "U3") (pin "CSN"))
    )
    (net (name "CC_GDO0")
      (node (ref "U2") (pin "PA8"))
      (node (ref "U3") (pin "GDO0"))
    )
    (net (name "CC_GDO2")
      (node (ref "U2") (pin "PB0"))
      (node (ref "U3") (pin "GDO2"))
    )
    (net (name "CC_ANT")
      (node (ref "U3") (pin "ANT"))
      (node (ref "J1") (pin "CENTER"))
    )
    (net (name "NRF_CSN")
      (node (ref "U2") (pin "PB1"))
      (node (ref "U4") (pin "CSN"))
    )
    (net (name "NRF_CE")
      (node (ref "U2") (pin "PB2"))
      (node (ref "U4") (pin "CE"))
    )
    (net (name "NRF_IRQ")
      (node (ref "U2") (pin "PB3"))
      (node (ref "U4") (pin "IRQ"))
    )
    (net (name "NRF_ANT")
      (node (ref "U4") (pin "ANT"))
      (node (ref "J2") (pin "CENTER"))
    )
    (net (name "I2C_SDA")
      (node (ref "U2") (pin "PB9"))
      (node (ref "U6") (pin "SDA"))
      (node (ref "R1") (pin "2"))
    )
    (net (name "I2C_SCL")
      (node (ref "U2") (pin "PB8"))
      (node (ref "U6") (pin "SCL"))
      (node (ref "R2") (pin "2"))
    )
    (net (name "IR_TX")
      (node (ref "U2") (pin "PA0"))
      (node (ref "IR1") (pin "TX"))
    )
    (net (name "IR_RX")
      (node (ref "U2") (pin "PA1"))
      (node (ref "IR1") (pin "RX"))
    )
    (net (name "STM_RST")
      (node (ref "U2") (pin "NRST"))
      (node (ref "SW4") (pin "1"))
    )
    (net (name "BATT_POS")
      (node (ref "BT1") (pin "B+"))
      (node (ref "MOD1") (pin "B+"))
    )
    (net (name "PWR_SW_IN")
      (node (ref "MOD1") (pin "OUT+"))
      (node (ref "SW1") (pin "IN"))
    )
    (net (name "PWR_SW_OUT")
      (node (ref "SW1") (pin "OUT"))
      (node (ref "U1") (pin "3V3"))
      (node (ref "U2") (pin "VDD"))
    )
  )
)